﻿/*
 * ========================================================================
 * Copyright(c) 2008-2010北京高阳金信信息技术有限公司, All Rights Reserved.
 * ========================================================================
 *  基金行情WCF服务接口
 * 
 * 作者：邓太华     时间：2010-06-04至08
 * 版本：V1.0
 * 
 * 修改者： 马德强        时间： 2010-06-22               
 * 修改说明：增加基金行情相关接口
 * ========================================================================
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel;

namespace NBFWcfService
{
    /// <summary>
    /// 基金行情服务接口
    /// </summary>
    [ServiceContract]
    public interface IFoundMarket
    {
        /// <summary>
        /// 获取所有基金行情信息
        /// </summary>
        /// <returns></returns>
        [OperationContract]
        List < NBFModel.Model_FoundMarket> GetFoundMarket();

        /// <summary>
        /// 获取所有基金行情信息（数组）
        /// </summary>
        /// <returns></returns>
        [OperationContract]
        NBFModel.Model_FoundMarket[] GetFoundMarketArray();

        /// <summary>
        /// 获取基金详细信息绑定到K图
        /// </summary>
        /// <param name="jjdm">基金系统代码</param>
        /// <returns></returns>
        [OperationContract]
        List<NBFModel.FundDetailsInfo> GetFundDetailsInfo(string jjdm);

        /// <summary>
        /// 获取基金公告
        /// </summary>
        /// <param name="jjdm">基金系统代码</param>
        /// <returns></returns>
        [OperationContract]
        List<NBFModel.Model_Announcement> GetFundAnnouncement(string jjdm);

        /// <summary>
        /// 获取基金新闻
        /// </summary>
        /// <param name="jjdm">基金系统代码</param>
        /// <returns></returns>
        [OperationContract]
        List<NBFModel.Model_News> GetFundNews(string jjdm);

        /// <summary>
        /// 获取基金概况
        /// </summary>
        /// <param name="jjdm">系统基金代码</param>
        /// <returns></returns>
        [OperationContract]
        List<NBFModel.Model_Overview> GetFundOverview(string jjdm);

        /// <summary>
        /// 获取基金分红
        /// </summary>
        /// <param name="jjdm">系统基金代码</param>
        /// <returns></returns>
        [OperationContract]
        List<NBFModel.Model_Dividend> GetFundDividend(string jjdm);

        /// <summary>
        /// 获取基金拆分
        /// </summary>
        /// <param name="jjdm">系统基金代码</param>
        /// <returns></returns>
        [OperationContract]
        List<NBFModel.Model_Split> GetFundSplit(string jjdm);

        /// <summary>
        /// 获取基金经理信息
        /// </summary>
        /// <param name="jjdm">系统基金代码</param>
        /// <returns></returns>
        [OperationContract]
        List<NBFModel.Model_FundManager> GetFundManager(string jjdm);

        /// <summary>
        /// 获取申购赎回信息
        /// </summary>
        /// <param name="jjdm">系统基金代码</param>
        /// <returns></returns>
        [OperationContract]
        List<NBFModel.Model_BuyAndSale> GetFundBuyAndSale(string jjdm);

        /// <summary>
        /// 获取行业配置信息
        /// </summary>
        /// <param name="jjdm">系统基金代码</param>
        /// <returns></returns>
        [OperationContract]
        List<NBFModel.Model_IndustryConfig> GetFundIndustryConfig(string jjdm);

        /// <summary>
        /// 获取基金重仓持股信息
        /// </summary>
        /// <param name="jjdm">系统基金代码</param>
        /// <returns></returns>
        [OperationContract]
        List<NBFModel.Model_FundHoldStock> GetFundHoldStock(string jjdm);

        /// <summary>
        /// 获取基金交叉持股信息
        /// </summary>
        /// <param name="jjdm">系统基金代码</param>
        /// <returns></returns>
        [OperationContract]
        List<NBFModel.Model_FundCrossStock> GetFundCrossStock(string jjdm);

        /// <summary>
        /// 获取基金规模
        /// </summary>
        /// <param name="jjdm">系统基金代码</param>
        /// <returns></returns>
        [OperationContract]
        List<NBFModel.Model_FundScale> GetFundScale(string jjdm);

        /// <summary>
        /// 获取基金公司
        /// </summary>
        /// <param name="jjdm">系统基金代码</param>
        /// <returns></returns>
        [OperationContract]
        List<NBFModel.Model_FundCompany> GetFundCompany(string jjdm);

        /// <summary>
        /// 获取同期发行基金
        /// </summary>
        /// <param name="jjdm">系统基金代码</param>
        /// <returns></returns>
        [OperationContract]
        List<NBFModel.Model_FundSamilerDate> GetFundSamilerDate(string jjdm);

        /// <summary>
        /// 获取同公司发行基金
        /// </summary>
        /// <param name="jjdm">系统基金代码</param>
        /// <returns></returns>
        [OperationContract]
        List<NBFModel.Model_FundSamilerCompany> GetFundSamilerCompany(string jjdm);

        /// <summary>
        /// 获取同类型基金
        /// </summary>
        /// <param name="jjdm">系统基金代码</param>
        /// <returns></returns>
        [OperationContract]
        List<NBFModel.Model_FundSamilerType> GetFundSamilerType(string jjdm);

        /// <summary>
        /// 获取净值列表
        /// </summary>
        /// <param name="jjdm">系统基金代码</param>
        /// <returns></returns>
        [OperationContract]
        List<NBFModel.Model_FundDWJZList> GetFundDWJZList(string jjdm);
    }


}
